Cash drawer

ABSTRACT

A point-of-sale system includes a stand that supports a tablet computer. The tablet computer can be connected through a hub to other peripheral components, such as a cash drawer. The cash drawer can include a slidable drawer including a front face, a back face, a first side face, a second side face, and a bottom face and having sliding rails that are hidden from a top view of the drawer. An inner shell is attached to the drawer and two sliding rails, the two sliding rails positioned under the inner shell. Further, a latch is movable between a first position in which the latch holds the drawer in a closed position and a second position in which the latch releases the drawer to an open position. An actuator is used to move the latch between the first and second positions.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit under 35 U.S.C. §119(e) of U.S.Patent Application No. 61/635,236, entitled “POINT-OF-SALE SYSTEM,”filed Apr. 18, 2012, which is incorporated herein by reference in itsentirety.

TECHNICAL FIELD

This disclosure relates to equipment for a point-of-sale system,including a stand for a tablet computer, a cash register drawer, andelectronic and software architecture.

BACKGROUND

A merchant uses a point-of-sale system to conduct payment transactions.The typical point-of-sale system includes a card reader for paymentcards (e.g., debit or credit cards) and a cash drawer.

If a customer pays by credit card, the merchant enters a transactionamount, and the merchant or the customer swipes the credit card in thecard reader. Many transactions require that the customer sign a physicalreceipt, electronically approve a transaction, e.g., by pressing anapprove button on a user interface, electronically sign for thetransaction, e.g., with a stylus or finger on an electronic signaturecapture device with a touch sensitive pad, or enter an authorizingpersonal identification number (PIN).

Alternatively, if the customer pays by cash, the merchant can receiveand deposit the cash into the cash drawer. A merchant can use a printerto print out a receipt that details the transaction.

Some point-of-sale systems include a bar code reader so that themerchant can scan the bar code on the product. A computer in thepoint-of-sale system can identify the product and price from the barcode. The computer can also calculate the total transaction amount,including sales tax, when multiple products are purchased in a singletransaction.

SUMMARY

As noted above, a conventional point-of-sale system can include acomputer, a cash drawer, a receipt printer, a display, and a bar codereader. The point-of-sale system often includes a specialized keyboard(with keys labeled for actions in the transaction). In general,point-of-sale systems tend to be bulky and expensive.

Some of these issues can be addressed with point-of-sale system thatincludes a stand that supports a tablet computer. The tablet computercan run a merchant application to provide the typical functionality fora point-of-sale system, generally making the point-of-sale systemlighter weight and more portable, and eliminating the need for variouscomponents such as the keyboard. The stand can be rotatable to faceeither the merchant or the customer, thus eliminating the need for aseparate display device for the customer. The stand can incorporate acard reader, eliminating the need for a separate card reading device.The tablet computer can be connected through a hub to other peripheralcomponents, such as a controllable cash drawer, a printer and/or a barcode reader.

In one aspect, a stand for supporting a tablet computer includes a frameincluding a horizontally extending bottom portion, a front portionextending vertically from a front end of bottom portion, and a backportion extending vertically from a back end of the bottom portion; acradle attached to the back portion of the frame and configured toreleasably support the tablet computer with a face of the tabletcomputer at an oblique angle relative to the bottom portion, a topsurface of the front end of the frame positioned lower than a bottomedge of the cradle, the cradle including a data connector configured tomate to a data port of the tablet computer; a card reader including avertical slot in the front portion of the frame, the slot parallel to ahorizontal axis in a plane defined by the face of the tablet computer;and circuitry configured to direct signals from the card reader to thedata connector.

Implementations may include one or more of the following features. Thecard reader may include a card stripe reader or a card chip reader. Anear-field communication card reader may be positioned in the backportion. The vertical slot may extend across an entire width of thefront portion. The oblique angle may be between about 40° and 65°. Thecradle may be pivotally attached to the back portion of the frame androtatable about a horizontal axis, and the slot may extend parallel tothe horizontal axis. A base may support the frame, the frame may bepivotally attached to base and rotatable relative to the base about avertical axis. The frame may be rotatable about the vertical axisbetween a first orientation and a second orientation. The firstorientation may be a 180° angle relative to the first orientation. Adetent mechanism may hold the frame at the first orientation and thesecond orientation. A stop may prevent the frame from rotation past thefirst orientation and from rotation past the second orientation. Wiringin the base may be configured to receive electrical power, and thewiring may be electrically connected to the circuitry to provide powerto the data connector, the wiring remaining immobile when the framerotates about the vertical axis. A cable may connect the wiring to thecircuitry, and the cable may extend between a first stationary openingin the base and a second opening that rotates with the frame. The wiringmay include a data and power cable extending from the base. An aperturemay be configured to receive a mechanical fastener. The stand may bepositioned on a table or counter and the fastener may extend through ahole in the table or counter into the aperture to secure the stand tothe table or counter. The aperture may be aligned with the verticalaxis. The frame may be pivotally attached to the base by a rotatableannular bearing and the aperture may extend through an opening throughthe bearing. The cradle may include a screw hole configured to align toan audio port of the tablet computer. A screw may be inserted into thescrew hole and may have a portion extending into the audio port. Thescrew hole may be positioned on a side of the frame opposite the dataconnector. The frame may be weighted such that a center of gravity ofthe stand with the tablet computer supported on the cradle is in frontof the bottom edge of the cradle. The frame may include a shell of afirst material and a body of a second material that is denser than thefirst material, and the body may be located in the bottom portion of theframe inside the shell.

In another aspect, a stand for supporting a tablet computer includes abase; a frame supported on and pivotally attached to base to rotaterelative to the base about a vertical axis between a first orientationand a second orientation, the frame including a horizontally extendingbottom portion and a back portion extending vertically from a back endof the bottom portion; a cradle pivotally attached to the back portionof the frame to rotate about a horizontal axis, the cradle configured toremovably support the tablet computer with a face of the tablet computerat an oblique angle relative to the bottom portion, the cradle includinga data connector configured to mate to a data port of the tabletcomputer; and circuitry configured to provide power to the tabletcomputer through the data port.

In another aspect, a stand for supporting a tablet computer includes abase; a frame supported on and pivotally attached to base to rotaterelative to the base about a vertical axis between a first orientationand a second orientation, the frame including a horizontally extendingbottom portion and a back portion extending vertically from a back endof the bottom portion; a cradle pivotally attached to the back portionof the frame to rotate about a horizontal axis, the cradle configured toremovably support the tablet computer with a face of the tablet computerat an oblique angle relative to the bottom portion, the cradle includinga data connector configured to mate to a data port of the tabletcomputer; circuitry configured to provide electrical power to the tabletcomputer through the data port; and wiring in the base to receiveelectrical power, the wiring electrically connected to the circuitry,the wiring remaining immobile when the frame rotates about the verticalaxis.

In another aspect, a stand for supporting a tablet computer includes aframe including a horizontally extending bottom portion and a backportion extending vertically from a back end of the bottom portion; acradle attached to the back portion of the frame, the cradle configuredto removably support the tablet computer with a face of the tabletcomputer at an oblique angle relative to the bottom portion, the cradleincluding a data connector configured to mate to a data port of thetablet computer and a hole configured to align to an audio port of thetablet computer; a fastener inserted into the hole and having a portionextending into the audio port of the tablet computer; and circuitryconfigured to provide power to the tablet computer through the dataport.

In another aspect, a point-of-sale-system includes a cradle to support atablet computer, the cradle including a data connector to mate to thetablet computer; an embedded host including a processor, wherein theembedded host is coupled with the data connector and is configured tocommunicate with the tablet computer; a card reader coupled to theembedded host; and a frame to support cradle, the embedded host, and thecard reader.

Implementations may include one or more of the following features. Thehub may include a chipset configured to communicate with the tabletcomputer, a mobile device port configured to couple the chipset to theembedded host, a connector for receiving power, and an enclosuresurrounding the chipset, mobile device port and the connector forreceiving power. The hub enclosure may include a printer port, whereinthe printer port is configured to couple the chipset to a printer. Thehub enclosure may further include a drawer port, wherein the drawer portis configured to couple the chipset to a drawer. The embedded host maybe configured to open or close the drawer. The embedded host may beconfigured to track whether the drawer is open or closed. The cardreader may include a flex circuit. The card reader may be a magneticstripe reader. The magnetic stripe reader may include a first read headand a second read head, the first read head and the second read headattached to the flex circuit. The flex circuit may include a horizontalfirst portion, a vertical second portion extending on one side of aslot, and a vertical third portion extending on an opposite side of theslot. The first read head may be attached to the first second portion ofthe flex circuit and the second read head may be attached to the thirdportion of the flex circuit. The encrypted magnetic head readers mayinclude a first encryption chip attached to the flex circuit adjacentthe first read head and a second encryption chip attached to the flexcircuit adjacent the second read head. The first encryption chip and thefirst read head may be encapsulated by a first potting and the secondencryption chip and the second read head may be encapsulated by a secondpotting. The read heads may include encrypted magnetic head readers. Theconnector for receiving power may be a power cord.

In another aspect, a cash drawer for a point-of-sale-system includes aslidable drawer including a front face, a back face, a first side face,a second side face, and a bottom face, an inner shell attached to thefirst side face, the second side face, the front face, the back face,and the bottom face, and two sliding rails, the two sliding railscovered by the inner shell and extending parallel to the first andsecond side faces; a drawer enclosure having two rail supports toslidably support the rails such that the drawer is slidable between aclosed position and an open position and a closed position; a latchmovable between a first position in which the latch holds the slidabledrawer in the closed position and a second position; and an actuatorconfigured solenoid move the latch from the first position to the secondposition.

Implementations may include one or more of the following features. Theactuator may be a solenoid. Circuitry may be configured to output asignal to an external port indicating whether the drawer is open orclosed. A cable may couple the drawer to the drawer enclosure. The innershell may be formed to support a tray within the drawer. The drawerenclosure may include an opening and a fastener, wherein the opening isconfigured to receive a mating feature of a stand and wherein a triggerof the fastener locks the stand enclosure in place. The opening may beformed to include a plug, and triggering of the fastener may release theplug. The opening may include a data port configured to mate to a dataport of the stand. One of the two sliding rails may be attached to thefirst side face and another of the two sliding rails may be coupled tothe second side face. The latch may include a first piece, a secondpiece, a first spring configured to urge the first piece to rotate in afirst direction, and a second spring configure to urge the second pieceto rotate in a second direction opposite the first direction. In theclosed position a pin attached to the slidable drawer may fits into aslot in the first piece and the second piece may be positioned toprevent the first piece from rotation such that an edge of the slotprevents forward motion of the pin.

In another aspect, a cash drawer for a point-of-sale-system includes aslidable drawer including a front face, a back face, a first side face,a second side face, and a bottom face, and two sliding rails; a drawerenclosure having two rail supports to slidably support the rails suchthat the drawer is slidable between a closed position and an openposition and a closed position, wherein in the closed position a backsurface of the front face of the slidable drawer bears directly againsta front surface of the drawer enclosure; a latch movable between a firstposition in which the latch holds the slidable drawer in the closedposition and a second position; and an actuator configured solenoid movethe latch from the first position to the second position.

In another aspect, a point-of-sale-system includes a tablet computerwith a merchant application; and a stand including a cradle thatsupports the tablet computer and a frame that supports the cradle, thecradle configured to releasably support the tablet computer with a faceof the tablet computer at an oblique angle, the cradle including a dataconnector configured that mates with a data port of the tablet computer,the stand rotatable about a vertical axis between a first orientationand a second orientation; and a card reader embedded in the stand;wherein the merchant application is configured to display on a screen ofthe tablet computer a first user interface to permit a merchant toidentify items to be purchased by a customer and calculate a totalamount due, and to display on a screen of the tablet computer a seconduser interface to permit a customer to authorize the transaction.

Implementations may include one or more of the following features. Thesecond user interface may prompt the customer to insert the card intothe card reader. The second user interface may prompt the customer tosign or to input a personal identification number (PIN).

Advantages of implementations may include one or more of the followingas described herein. When using a point of sale device, a merchantconducts a transaction using a stand that supports a mobile device(e.g., a tablet computer). The stand can secure the tablet computer, sothat the tablet computer is not easily removed from the stand. The standcan include a card reader (e.g., a magnetic stripe reader, NFC reader orEMV reader). The stand can swivel to face the screen of the tabletcomputer towards an employee of the merchant or towards a customer.While swiveling, the wires extending from the stand can remain immobile.The stand can connect to a drawer and other peripheral devices (e.g., anexternal printer) through a hub. The tablet computer can interface withother devices connected to the hub when the tablet computer is connectedto the stand through a data connector. The amount of wiring can bereduced. A merchant can assemble a point-of-sale system withoutrequiring specialized knowledge of electronics or software, and thepoint-of-sale system can be provided at lower cost. The stand can beportable, so that the merchant can easily set up the point-of-salesystem at different locations. Electronics in the stand can be poweredby the mobile device. In this case, there can be no wires extending fromthe stand. In some embodiments, the stand can be weighted so that thestand remains stable while a user interfaces with (e.g., touches) thetablet computer. The stand can be secured to a stationary object (e.g.,a merchant's counter or table).

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic illustration of an example architecture for apoint of sale system.

FIG. 2 is a perspective view of an example stand.

FIG. 3 is a side view of the example stand.

FIG. 4 is a cross-sectional side view of the connection between the backportion of the frame and the cradle, according to an example.

FIG. 5 is a bottom view of the base of the stand, according to anexample.

FIG. 6 is a perspective view of the base, according to an example.

FIG. 7A is a view of an example cable in the base when the frame is in afirst orientation.

FIG. 7B is a view of an example cable in the base when the frame is in asecond orientation that is 180° relative to the first orientation.

FIG. 8 is a perspective view of example circuitry in the frame (shown inphantom) of the stand.

FIG. 9 is a cross-sectional side view of example circuitry in the stand.

FIG. 10 is a view of example circuitry for a card reader.

FIG. 11 is a top view of the stand, according to an example.

FIG. 12 is a view of a tablet computer being secured by the cradle,according to an example.

FIG. 13A is a perspective view of an example hub connected to the stand.

FIG. 13B is a frontal view of the example hub.

FIG. 14 is a perspective view of an example drawer that is open.

FIG. 15A-C are a perspective, top, and side views of a closed drawer,according to an example.

FIG. 16 is an exploded view showing some structural components of thedrawer, according to an example.

FIG. 17 is a bottom view of components inside of the drawer enclosure,with the slidable drawer shown in phantom, according to an example.

FIG. 18 is a top view of an example latch.

FIG. 19 is an exploded view of the top of the drawer enclosure,according to an example.

Like reference numbers and designations in the various drawings indicatelike elements.

DETAILED DESCRIPTION

FIG. 1 is a schematic illustration of example architecture for a pointof sale system 100. The architecture includes a tablet computer 102, astand 104 for the tablet computer 102, a hub 106, a drawer 108, aprinter 110 and a bar code reader 112. The stand 104 incorporates a cardreader 202 (e.g., a magnetic stripe reader, Near Field Communication(NFC) reader or chip card reader, e.g., a Europay, MasterCard, and Visa(EMV) reader). A merchant might purchase each of the elementsindividually, e.g., the stand can be provided separately from the tabletcomputer, the drawer might be provided separately from the stand.Moreover, even in an assembled point-of-sale system 100, the hub 106,cash drawer 108, printer 110 and bar code reader 112 are optionalcomponents.

The tablet computer 102 runs software that can conduct paymenttransactions. The tablet computer 102 includes a processor 114, atouch-screen display 116, a wireless local area network transceiver 118,a physical interface 120 for electronic communication, and a physicalinterface to receive power (which can be integrated with the physicalinterface for electronic communication, e.g., in a Universal Serial Bus(USB) connector or other propriety connector). The tablet computer 102can also include an audio port 122 to receive an audio jack. Thephysical interface 120 can be on an opposite edge of the tablet computer102 from the audio port 122. For example, the tablet computer 102 can bean iPad tablet computer.

The tablet computer 102 is supported and detachably secured to the stand104. In some implementations, the tablet computer 102 is electronicallyconnected to the stand 104 through a data connector. The tablet computer102 can communicate with circuitry in the stand 104, and vice-versa, aswill be described below in reference to FIG. 8-10.

The stand 104 is a structure that supports and detachably secures thetablet computer 102. The stand 104 is part of a point-of-sale systemthat is prominently viewable by a customer. The stand 104 will bedescribed further below in reference to FIGS. 1-12.

Optionally, the stand 104 connects to a hub 106. The hub 106 connectsthe tablet computer 102 to one or more peripheral devices. In someimplementations, the peripheral devices include the drawer 108, e.g., acash drawer, the printer 110 and/or the bar code reader 112. The hub 106acts as a communication bridge between the tablet computer 102 andperipherals connected to the hub 106. The hub 106 will be describedfurther below in reference to FIGS. 13A-B.

In some implementations, the hub 106 connects the stand 104 to thedrawer 108. The drawer 108 is a structure that includes electronics tointerface with the tablet computer 102. In some implementations, thedrawer 108 securely holds cash. The drawer 108 will be described belowin reference to FIGS. 14-18.

In some implementations, the hub 106 connects the stand 104 to theprinter 110. The tablet computer 102 can send data to the printer 110through the hub 106. For example, the tablet computer 102 can be amerchant device that conducts payment transactions with a customer. Thetablet computer 102 can send receipt data to the hub 106. The hub 106,in turn, can send the receipt data to the printer 110. The printer 110can receive the receipt data and print a receipt based on the receiptdata. The printer 110 can be a commercially available receipt printerwith a USB connector that will plug into the hub 106.

In some implementations, the hub 106 connects the stand 104 to the barcode reader 112. The bar code reader 112 can be a commercially availablebar code reader with a USB connector that will plug into the hub 106.

A conventional point-of-sale system can include a computer, a cashdrawer, a receipt printer, a display facing the merchant, and a bar codereader. The merchant can scan in items for sale using the bar codereader. The computer receives each scan and looks up correspondingdetails about the item in an inventory database. After receiving thedetails from the database, the computer can show the details on themerchant-facing display. For example, the details can include anidentification number, description, and price of each item being sold.After scanning in the items for sale, the merchant can calculate a totalamount due to the merchant. The total amount due can include a taxand/or a tip. Once the amount is finalized, the computer can process thetransaction and can use the printer to print a receipt. The customer canphysically sign the receipt and return the receipt to the merchant.

An alternative conventional point-of-sale system includes an additionalcustomer-facing display. The computer can display details of thetransaction on both the customer-facing display and the merchant-facingdisplay. In some implementations, the customer-facing display isattached to a customer-facing card reader. Therefore, instead of themerchant swiping the customer's card, the customer can swipe the card inthe customer-facing card reader. Once scanning is complete, thecustomer-facing display can display a message that prompts the customerto swipe the card (e.g., “Please swipe your payment card”). After thecustomer swipes the card, the customer-facing display can display amessage that prompts the customer to enter a signature (e.g., “Pleasesign here”). The customer can digitally sign on the customer-facingdisplay using a stylus or finger.

In the point-of-sale system 100, the tablet computer 102 secured to thestand 104 acts as both a customer-facing display and a merchant-facingdisplay. The tablet computer 102 can run a merchant application toprocess transactions. When scanning items, the merchant applicationcauses the tablet computer 102 to act as a merchant-facing device asdescribed above. Alternatively, the merchant application can displayitems for purchase on the screen of the tablet computer 102 and processtouches for item selection. After item scanning or item selection iscomplete, the tablet computer 102 can calculate a total amount due,e.g., including tax and/or tip, and display the total amount to theuser. The application then can display a prompt to receive a customer'ssignature, customer personal identification number (PIN) or other formof authorization or authentication for the transaction. When themerchant sees the prompt, the merchant can swivel the stand 104 to facethe tablet computer 102 towards the customer. After the customerapproves the transaction, e.g., signs on the touchpad of the tabletcomputer 102, the tablet computer 102 can display, to the customer,different methods of obtaining a receipt. For example, the methodsinclude printing the receipt, emailing the receipt to an email of thecustomer, or allowing the customer an option to skip the receiptprocess.

The tablet computer 102 can process the transaction using the merchantapplication. The tablet computer 102 can connect to a wireless network(e.g., WiFi hotspot or cellular data connection). The tablet computer102 can send the transaction information (including the signature andcard data) to a payment processing server, which in turn communicateswith a card network. The card network can send a message to the paymentprocessing server indicating a status of the payment transaction (e.g.,success, failure, or other state). In turn, the payment processingserver can send the status to the tablet computer 102.

The tablet computer 102 can display a message indicating the status tothe customer. After the customer finishes the transaction, the merchantcan swivel the stand back to face the tablet computer 102 towards themerchant.

FIG. 2 is a perspective view of an example stand 104, and FIG. 3 is aside view of the example stand 104. The stand 104 includes a cradle 220to support and secure the tablet computer, and a frame 200 to supportthe cradle 220.

The frame 200 includes a front portion 204, a back portion 208, and ahorizontally extending bottom portion 206. The back portion 208 extendsvertically from a back end of the bottom portion 208. The front portion204 extends vertically from a front end of the bottom portion 208. Thefront portion 204 extends upwardly from the bottom portion 206 in frontof the cradle 220. Each of the front portion 204 and bottom portion 206can be a generally planar body. The back portion 208 can include asingle vertically extending portion 208 a that connects to the cradle220, or can include the vertically extending portion and a horizontalstrut 208 b (see FIG. 3) that connects to the cradle 220. The verticallyextending portion 208 a can be directly beneath the cradle 220, or thevertically extending portion 208 a can be positioned behind the cradle220.

The front portion 204 of the frame 200 includes a card reader 202. Thecard reader 202 includes a slot 202 a to receive a card. The card reader202 can process payment cards or devices. For example, a merchant orcustomer can swipe a payment card through the slot 202 a. Data read bythe card reader 202 can be directed to a merchant application running onthe tablet computer 102. The card reader 202 can be a magnetic stripereader, a chip card reader, e.g., an EMV reader, or NFC reader. In someimplementations, the card reader 202 can include one or more types ofreaders. For example, the card reader 202 can have the capability toread magnetic stripes and include a mechanism to read EMV cards and/orNFC devices. Alternatively, the card reader 202 can be a magnetic readerand another card reader can be included in another part of the stand104, e.g., an NFC reader in the back portion 208.

The slot 202 a is formed in the front portion 204 of the frame 200,e.g., in a top surface 202 b of the front portion 204. The slot 202 acan be oriented vertically, e.g., in a plane parallel to the frontsurface of the front portion 204. The vertical slot 202 a can extendacross the entire width of the front portion 204. In someimplementations, the slot 202 a is or extends parallel to a horizontalaxis in a plane defined by the face of the tablet computer when held bythe cradle 220.

The cradle 220 attaches to the back portion 208 of the frame. The cradle220 is configured to support the tablet computer 102. A front face ofthe cradle 220 can include a rim 222 and a recessed region 224. The rim222 is configured to engage and support the edge of the back surface ofthe tablet computer 102. The surface of the recessed region 224 can beshaped to mate to the back surface of the tablet computer 102, i.e.,come into contact across all or a substantial portion of the backsurface of the tablet computer 102. Although FIG. 2 illustrates thecradle 220 as a generally plate-shaped body with a front face thatextends across the back surface of the tablet computer, in someimplementations there can be apertures through the front face of thecradle. For example, the cradle 220 could support the tablet computer102 substantially only at its edges (e.g., most of the recessed regioncould be replaced by an aperture through the cradle 220).

In some implementations, the touch-screen face of the tablet computer102 is positioned at an oblique angle, e.g., about 40-65°, relative tothe bottom portion 206 when the tablet computer is held by the cradle220. In some implementations, a top surface 202 b of the front portion204 of the frame 200 is positioned lower than a bottom edge 226 of thecradle 220.

The cradle 220 includes a data connector 230 that is configured to mateto a data port 120 (see FIG. 12) of the tablet computer 102. The dataconnector 230 can project inwardly from the rim 224. The data connector230 can be located on the portion of the rim 224 at a first side edge232 of the cradle 220.

A pin 240 can project from the cradle 220. The pin 240 is configured tomate to an audio port 122 of the tablet computer 102. The pin 240 canproject inwardly from the rim 224. The pin 240 can be a separate piecethat extends through an aperture 1204 (see FIG. 12) in the rim of thecradle 220. The aperture 1204 and the pin 240 can be located on theportion of the rim 224 at second first side edge 242 of the cradle 220.The second side edge 242 can be on an opposite side of the cradle 220from the first side edge 232.

In some implementations, the frame 200 is weighted such that the stand'scenter of gravity is towards the front portion 204 of the frame 200. Thecenter of gravity can at least be in in front of the bottom edge of thecradle 220. For example, a body 250 (see FIG. 9) of dense material,e.g., a zinc plate, can be embedded in the front half of the frame 200,e.g., in the front half of the bottom portion 206. Alternatively or inaddition, the front half of the frame 200 can be built from densermaterial than the back half of the frame, e.g., light aluminum orplastic. In addition, the back portion 208 can be thinner than the frontportion 204 and bottom portion 206. With the stand 104 weighted in thisway, a user can interface with the tablet computer, e.g., touch thescreen with varying amounts of force, while both the stand 104 and thetablet computer 102 will remain stable.

FIG. 4 is a cross-sectional side view of the connection between the backportion 208 of the frame 200 and the cradle 220. As shown, the cradle220 can be pivotally connected to the back portion 208 of the frame 200.For example, the cradle 220 can be connected by a cylindrical rod andsocket joint 402 to the frame. In some implementations, the pivotalconnection is configured so that the cradle 220 can rotate about ahorizontal axis, e.g., the rod of the rod and socket joint 402 extendssubstantially horizontally. For example, when facing the stand 104, auser can tilt the tablet computer forward or backward. The pivotalconnection can provide the cradle 220 with at least a 25° range ofmotion. In some implementations, the cradle 220 can rotate about an axisnormal to the face of the tablet computer 102. For example, when facingthe stand 104, the user can also rotate the tablet computer clockwise orcounterclockwise (e.g., place the tablet computer device in a landscapeor a portrait orientation).

Returning to FIG. 3, in some implementations, the stand 104 includes abase 302 that rotatably supports the frame 200 and cradle 220. The base302 can be circular and can have a width about equal to the width of thebottom portion 206 of the frame. The base 302 will be described furtherbelow in reference to FIGS. 5-7.

FIG. 5 is a bottom view of the base 302 of the stand 104. The base 302is attached to the bottom portion 206 of the frame 200. In someimplementations, the base 302 supports and is pivotally attached to theframe 200. The base can rotate the frame 200 about a vertical axis 310(see FIG. 3). The center of gravity of the stand 104 can be in front ofthe vertical axis 310. For example, the frame 200 can be supported on arotatable bearing 602 (see FIG. 6), such as a Lazy Susan bearing, in thebase 302. This configuration permits the base to have a fairly lowprofile, e.g., be less than about half an inch in height.

In some implementations, the base 302 includes stops so that the frame200 is limited to rotation between a first orientation and a secondorientation. Alternatively or in addition, the base 302 can includedetent mechanisms to hold the frame 200 in the first orientation orsecond orientation unless a sufficient torque is applied by the user. Insome implementations, the second orientation is at an angle of 180°relative to the first orientation. For example, the stand 104 can beresting on a table that separates a customer from a merchant. A tabletcomputer 102 on the stand 104 can be facing an employee of the merchant.After conducting a transaction, the merchant can turn the stand 104 by180° to face the tablet computer 102 towards the customer, e.g., toobtain the customer's signature or to show details of the transaction.After the customer is finished interfacing with the tablet computer 102,the merchant can return the stand 104 to its original position. Otherpreset angles, e.g., 90° or 135°, between the first orientation andsecond orientation are possible.

In some implementations, the base 302 includes an aperture 502 alignedwith the vertical axis 310. The aperture 502 can extend through therotatable bearing 602 (see FIG. 6). The aperture is configured toreceive a mechanical fastener, e.g., a screw or bolt. The mechanicalfastener can lock the base, and therefore the stand 104, to a stationaryobject (e.g., a table or counter of the merchant). In someimplementations, the aperture is threaded to receive a screw. Forexample, a hole can be drilled through a support (e.g., the table orcounter) and the screw can be inserted through the hole and into thethreaded aperture and tightened to hold the stand 104 on the support. Inalternative implementations, an adhesive is applied to the base 302, orto another body that is held on the base 302 by the mechanical fastener.

The base 302 includes wiring to receive electrical power. The wiringconnects the circuitry in the stand 104 and provides power to the dataconnector in the stand 104. The circuitry is described below inreference to FIGS. 8-10.

FIG. 6 is a perspective view of the base 302. The base 302 can include aside wall 320 to hide the bearing 602 and any cabling inside the base.Referring to FIGS. 5 and 6, in some implementations, a groove 504 isformed in the bottom surface of the base 302. A cable for power and/ordata can extend through the groove 504. One end of the groove 504 isflush with the outer surface 322 of the side wall 320 of the base 302,and the other end of the groove ends in an external opening 702 into theinterior of the base 302. When the frame 200 rotates about the verticalaxis 310, the groove 504 remains stationary, so that a portion of thecable that extends from the stand 104 does not move. This not onlyprevents wear and tear on the cable and prevents the cable from tanglingwith other components on the table or counter of the merchant, but alsoprovides a cleaner visual experience for a user of the stand 104. Insome implementations, the cable includes a data wire and a power wire(e.g., to power circuitry in the stand 104).

FIG. 7A is a view of an example cable 704 in the base 302 when the frameis in a first orientation. As noted above, the groove 504 leads thecable 704 into an external opening 702. The cable 704 runs from theexternal opening 702 to an internal opening 706. The internal opening706 can lead the cable 704, which carries power and/or data, tocircuitry in the stand 104. When the frame 200 rotates (e.g., clockwiseor counter-clockwise), the external opening 702 does not move whereasthe internal opening 706 does move.

FIG. 7B is a view of an example cable 704 in the base 302 when the frameis in a second orientation that is 180° relative to the firstorientation. Although FIGS. 7A and 7B illustrate the cable 704 as loopedaround the bearing 602, this is not necessary.

In some implementations, the detent mechanism or stops in the baserestrict rotation depending on the frame's orientation. For example, theframe in the first orientation can be restricted to only rotate in acounter-clockwise direction A (see FIG. 7A) to reach the secondorientation. The frame in the second orientation can be restricted toonly rotate in a clockwise direction B (see FIG. 7B) to reach the firstorientation. Limiting rotation of the frame helps prevent the cable 704inside the base 302 from being tangled or damaged when the framerotates.

FIG. 8 is a perspective view of example circuitry in the frame 200(shown in phantom) of the stand 104. FIG. 9 is a cross-sectional sideview of example circuitry in the stand 104. Referring to FIGS. 8 and 9,the circuitry can include an embedded host 804, a data connector 806,and a card reader 202 (e.g., a magnetic stripe reader, EMV reader, NFCreader, or other payment reader).

The embedded host 804 is a central processing device that controlscommunications between the tablet computer 102 and other externaldevices (e.g., a printer 110 or a cash drawer 108). The embedded hostincludes a processor 810. The embedded host 804 can be positioned in theback portion 208 of the frame, although other locations such as thebottom portion 208 are possible. As mentioned above in reference toFIGS. 7A and 7B, the internal opening 702 leads a cable 704, whichprovides electrical power and/or data, to the embedded host 804. If atablet computer 102 is connected to the cradle 220, the embedded host804 can communicate with the tablet computer 102 through the dataconnector 806. The embedded host 804 also directs signals from the cardreader 202 to the tablet computer. For example, if a customer uses acard at the card reader 202, e.g., a magnetic, NFC, or chip card reader,e.g., an EMV reader, the embedded host 804 receives the card data andsends it to the tablet computer through the data connector 806.

In some implementations, the first end of the cable 704 is connected tothe embedded host 704, and the second end of the cable 704 is connectedto a hub. The hub will be described below in reference to FIGS. 13A-B.The embedded host 804 can control devices connected to the hub. A cashdrawer 108 can be connected to the hub 106. The embedded host 804 cancontrol whether to open the drawer 108. For example, when conducting atransaction, a merchant application running on the tablet computer 102can choose to process payment with cash or card. If a cash payment isselected, the application can send a signal to the embedded host 804,which can open the cash drawer 108. When the cash drawer 108 closes, thedrawer 108 can send a signal to the embedded host 804, which can notifythe application running on the tablet computer 102. In another example,a printer 110 can be connected to/in communication with the hub 106. Theembedded host 804 can receive data from the tablet computer 102 andcommunicate with the printer 110 to print the data. In another example,a bar code reader 112 can be connected to the hub 106. The embedded host804 can the signals from the bar code reader 112 and pass them to thetablet computer 102.

The embedded host 804 can also read a state from the drawer 108 (e.g.,whether the drawer is open or closed). For example, the applicationrunning on the tablet computer 102 can request the embedded host 804 toretrieve the state of the drawer 108 at a certain time. The embeddedhost 804 can send the state of the drawer 108 to the application, whichperiodically saves the drawer's state. Based on the state, theapplication can also track a number of times the drawer 108 has beenopened or closed over a period of time or how long the drawer 108 hasremained open. This allows the merchant (e.g., a manager) to reviewwhether there is any unusual activity, e.g., the drawer has been openedor closed too many times, or the drawer was open at an unusual time ofday.

The application running on the tablet computer 102 can associate anidentity with every drawer action. When using the application, anemployee can enter a personal identifier, e.g., an employee ID or a PIN,into a user interface of the tablet computer 102. The application canstore the personal identifier and log the employee as using the device.When circuitry of the drawer 108 sends the state to the embedded host804, which forwards 20 the state to the tablet computer 102, theapplication can log the personal identifier with the state of thedrawer, e.g., whether the drawer is opened or closed, at a certaintimestamp. The employee can log out of the application using the userinterface of the tablet computer 102. The embedded host 804 can readdata from the card reader 802 202 as described above in reference toFIG. 8.

In some implementations, the embedded host 804 includes a standidentification (stand ID) for the stand 104. Each stand can have aunique stand ID. For example, the stand ID can be stored in aconfiguration register. The stand ID can be determined when the stand104 is manufactured.

In some implementations, the drawer 108 also includes circuitry, e.g.,one or more configuration registers, for a drawer ID. Each drawer canhave a unique drawer ID. The drawer ID can complement the stand ID. Insome implementations, the IDs are generated during manufacturing. Inalternative implementations, the mobile device 102 can pair a drawer IDand a stand ID when the point-of-sale system is initialized, e.g., whenthe stand 104 is first connected to the drawer 108, a merchant pairs thedrawer and the stand using an application running on the mobile device102.

The point-of-sale system can determine whether the stand is correctlypaired with the drawer. The embedded host can access the drawer ID fromthe circuitry in the drawer 108. The embedded host can also access thestand ID. In some implementations, the embedded host determines whetherthe drawer ID and stand ID complement each other and notifies anapplication running on the mobile device 102. In other implementations,the mobile device 102 accesses the IDs from the embedded host 804 andmakes the determination. In other implementations, the mobile device 102accesses the IDs from the embedded host 804, and the drawer ID and standID are sent to a remote server, and the remote server makes thedetermination and sends an alert to the merchant, e.g., the mobiledevice 102 or another computer. If the IDs do not complement each other,the mobile device 102 can notify an external system of suspiciousactivity, e.g., a payment service system. This can deter fraud involvingthe drawer, e.g., the system can detect switching of a cash-filleddrawer with an empty drawer.

FIG. 10 is a view of example circuitry for a card reader 202. In someimplementations, the card reader 202 is a magnetic stripe reader. Themagnetic stripe reader can be made from a flex circuit 802. The flexcircuit 802 can include two read heads 1002, 1004. This allows acustomer to swipe, in the card reader, a credit card in eitherorientation, e.g., with the card stripe facing either the customer orthe merchant, through the slot 202 a. The flex circuit 802 can bepositioned so the read heads 1002, 1004 are position in the frontportion 204 of the frame of the stand 104 on either side of the slot 202a, as shown in FIG. 8.

In some implementations, the card reader 202 is an EMV reader. The EMVreader can be a modified swipe card reader, e.g., a modified flexcircuit with two read heads 1002, 1004. The modified flex circuit cancommunicate with a chip in a customer's card. For example, the customercan swipe or place the card in contact with the EMV reader. The EMVreader reads the data from the card and the mobile device 102 promptsthe customer for a personal identification number (PIN). The mobiledevice 102 receives the customer's PIN and sends the PIN to the chip inthe customer's card. The chip can verify whether the PIN matches with aninternal PIN on the chip. The chip then notifies the EMV reader whetherthe PIN matches.

In some implementations, the card reader 202 is an NFC reader. The NFCreader can read NFC-supported devices (e.g., mobile phones or NFC cards)at a short-range distance using standard NFC protocols. The customer canplace a card a short distance from the NFC reader. The NFC reader readsthe card data and sends the data to the mobile device 102 forprocessing.

In some implementations, encryption circuits 1006, 1008 are located onthe flex circuit 802 immediately adjacent the read heads 1002, 1004. Theencryption circuits 1006, 1008 can be commercially available encryptionASICs. During assembly, each encryption circuit 1006, 1008 is pottedwith the adjacent the read head 1002, 1004, respectively. In someimplementations, each read head 1002, 1004 contains hardware encryption.In either implementation, if a customer swipes a credit card, the cardreader 202 immediately encrypts the card data from the read heads andsends the data to the embedded host 804. The card data is laterdecrypted in an external server (e.g., a payment server communicatingwith the tablet computer).

If the embedded host 804 is located in the back portion 208 of the frame200, then the flex circuit 802 can include an extended strip 1010 thatpasses through the bottom portion 206 to connect the read heads 1002,1004 to the embedded host 804. The strip 1010 can include an offsetportion 1012 to provide clearance for the bearing 602 and/or anyreceiving aperture for the mechanical fastener.

FIG. 11 is a top view of the stand 104. FIG. 12 is a view of a tabletcomputer 102 being inserted into the cradle 220. When placed on thecradle 220, the tablet computer 102 can communicate with the embeddedhost 804 through the data connector 230. For example, if the cradle 220is configured to support an iPad, then the data connector 230 can be the30-pin Apple dock connector. In some implementations, the cradleincludes a screw hole 1204 (see FIG. 12) configured to align to an audioport of the tablet computer. A screw 1104 can be inserted and extendedinto the screw hole. A tip of the screw 1104 can be configured to fitinto a standard audio port; threading on shank of the screw can belocated near the top of the screw 1104 to engage threading on the hole1204.

When placed on the cradle 220, the tablet computer 102 can attach to thedata connector 230 and be secured by the screw 1104. Since the dataconnector 230 and screw 1104 are inserted into the tablet computer 102from opposite sides, the tablet computer 102 is securely held on thecradle 220. This configuration permits the tablet computer to be securedto stand 104 in such a manner that although the table computer isdetachable (i.e., by removing the screw 1104) it cannot be quicklyremoved, thereby preventing a quick theft of either the stand 104 or thetablet computer 102. In some implementations, a spring 1202 is attachedto the cradle 220. The spring 1202 can push the tablet computer 102 outof the cradle 220 when the screw 1104 is removed from the audio port ofthe tablet computer 102.

FIG. 13A is a perspective view of an example hub 106 connected to thestand 104. The hub 106 is an enclosure that includes a chipset, a powersource 1304, a device port 1306, and other ports for peripheral devices.The hub's chipset is configured to relay data between peripheral devicesconnected to the hub and the tablet computer (e.g., through the embeddedhost 804). The device port 1306 provides a communication bridge betweenthe chipset and the tablet computer (e.g., through the wire 704 in thestand 104). The device port 1306 can also provide power to the stand'scircuitry through the power source 1304.

FIG. 13B is a frontal view of the example hub 106. In someimplementations, the hub 106 includes a drawer port 1312. The drawerport 1312 can be a communication bridge between the chipset andcircuitry in the drawer 108 (e.g., the cash drawer). The chipset canrelay information sent from the tablet computer to the drawer, andvice-versa. The drawer port 1312 can be a nonstandard port with a groundline, a voltage supply line that provides extra power, e.g., at 12volts, to a connected peripheral device, and two data lines. The hub(and the embedded host) can be configured to communicate data on thedata lines using Universal Serial Bus (USB) communication protocols. Insome implementations, the hub 106 includes peripheral ports 1308 and1310. The peripheral ports can be connected to external devicessupported by the chipset. For example, the external printer 110 can beconnected to the peripheral port 1308 or 1310. As another example, thebar code reader 112 can be connected to the peripheral port 1308 or1310. In some implementations, the peripheral ports are standardUniversal Serial Bus (USB) ports.

FIG. 14 is a perspective view of an example drawer 108 that is open.FIG. 15A is a perspective view of a closed drawer 108. FIG. 15B is a topview of the closed drawer 108. FIG. 15C is a side view of the closeddrawer 108. The drawer 108 can be connected to the hub 106 (or directlyto the stand 104). The drawer 108 includes various electroniccomponents, and in some implementations the drawer 108 is powered by thepower source of the hub.

The drawer 108 includes a drawer enclosure 1402 that holds a slidabledrawer 1404. The enclosure 1402 can be a generally rectangularparallelepiped, with the slidable drawer 1404 fitting into an opening inthe front side of the enclosure 1402.

In some implementations, the slidable drawer 1404 includes a tray 1406.The tray 1406 can be removable from the slidable drawer 1404. The tray1406 can be divided into a plurality of compartments, and can have oneor more flippers (e.g., a flipper 1408) to store cash. The tray 1406 canalso store coins or other forms of payment (e.g., coupons).

FIG. 16 is an exploded view showing some structural components of thedrawer 108. The slidable drawer 1404 includes a front face 1610, a firstside face 1614, a second side face 1612, a bottom face 1616, and a backface 1618. The drawer 1404 also includes an inner shell 1608. The innershell 1608 is positioned in the interior of the drawer and attaches toand runs along all sides of the drawer (e.g., the front, sides, back,and bottom faces). In some implementations, the inner shell 1608 isformed to support the tray 1404 (in reference to FIG. 14).

The drawer also includes two parallel sliding rails 1604, 1606. Thesliding rails 1604, 1606 are positioned under the inner shell 1608 sothat the rails 1604, 1606 are covered when the drawer 108 is opened andviewed from above (see FIG. 14). The sliding rails 1604, 1606 extendparallel to the first and second side faces 1612, 1614. The sliding rail1606 is attached to the first side face 1614. The sliding rail 1604 isattached to the second side face 1612. Alternatively or in addition, thesliding rails 1604, 1606 are attached to the inner shell 1608.

The drawer enclosure 1402 includes rail supporters 1624, 1626 toslidably receive the two sliding rails 1604, 1606. For example, amerchant can open and close the drawer 1404 by applying a pushing orpulling motion on the sliding rails 1604, 1606. The rail supporters1624, 1626 are also not visible from a top view when the drawer is opensince the rail supporters 1624, 1626 are hidden by the back face 1618 ofthe slidable drawer 1404. In some implementations, a cable 1602 isattached to the drawer to prevent the slidable drawer 1404 from beingdetached from the drawer enclosure 1402. The cable can be a metal catch.

As shown in FIGS. 15A-15C, when closed, back surface of the front face1610 of the slidable drawer 1404 can directly contact the front surfaceof the enclosure 1402 so that there is effectively no gap between theslidable drawer 1404 and the enclosure 1402. The reduced gap improvessecurity (e.g., by making it more difficult to insert a crowbar or othertool to pry open the drawer).

FIG. 17 is a bottom view of components inside of the drawer enclosure1402, with the slidable drawer 1404 shown in phantom. The drawer 108includes a latch 1708 and a solenoid 1706.

In general, the latch 1708 holds the slidable drawer 1404 locked in aclosed position (as shown in FIGS. 15A-15C). For example, a bracket 1720can extend from the back of the slidable drawer 1404, and a pin 1722 canextend vertically from the bracket 1720 and be captured by a slot 1724in the latch 1708. In the closed and locked state, the latch 1708 ispositioned and held so that an edge of the slot 1724 prevents forwardmovement of the pin 1722, and thus prevents forward movement of theslidable drawer 1404.

The slidable drawer 1404 can be released from the drawer enclosure 1402using the solenoid 1706. For example, the tablet computer 102 can send acommand (e.g., through the embedded host 804) to open the drawer 1404.The command triggers the solenoid 1706 to move the latch 1708 andrelease the drawer 1404. The command can be sent at the end of atransaction, e.g., when the customer is making a cash payment, or whenthe manager slides a manager's card through the card reader 202. Forexample, in some implementations, the solenoid 1706 can move a part sothat the latch 1708 is be permitted to swing freely. Because the latch1708 can swing to release the pin 1722, the drawer is free to open.

A spring 1730 can positioned between the back of the enclosure and theback surface of the slidable drawer 1404 to apply a force to cause theslidable drawer 1404 to slide forward out of the enclosure 1402. In someimplementations, the spring 1730 can bear against a bracket 1732 thatextends from the back of the slidable drawer 1404.

In addition, the drawer 108 can optionally include a locking mechanism1702 and an actuating mechanism 1704. The drawer 1404 can be releasedthrough the locking mechanism 1402. For example, it may be necessary tounlock the drawer 108 when there is a power failure and no power toactuate the solenoid. The locking mechanism 1702 can be attached to thebottom of the drawer enclosure 1402. For example, a merchant can quicklyaccess the cash drawer by inserting a master key 1734 into the lockingmechanism 1702. When the locking mechanism 1702 receives a valid key,insertion of the valid key creates a force that engages the actuatingmechanism 1704 with the latch 1708. For example, the locking mechanismcan be configured so that only a valid key will be permitted to extendthrough the lock so that the tip of the key bears against the actuatingmechanism 1704. Movement of the latch 1708 then opens the drawer 1404.In some implementations, the locking mechanism 1702 is a linear lock andthe actuating mechanism 1704 is a metal rod.

FIG. 18 is a top view of an example latch 1708. The latch as shown canbe in a position when the drawer 108 is opened. The latch can include afirst piece 1804 that is pivotally mounted to the enclosure 1402 and asecond piece 1802 that is pivotally mounted to the enclosure 1402. Thesolenoid 1706 can be attached to the second piece 1802. For example, apin 1810 extending upwardly from the actuatable rod 1812 (shown inphantom) of the solenoid 1706 can pass through a slot (or hole) 1808 inthe second piece 1802.

When the drawer is closed, the pin 1722 fits into the recess 1724 on oneend of the first piece 1804, and an edge 1814 of the second piece 1802bears against the back surface of the first piece 1804, e.g., at arecess 1806. The presence of the second piece 1802 prevents the firstpiece 1804 from rotating clockwise, and thus prevents the first piece1804 from swiveling, thus holding the pin 1822 and keeping the drawer108 closed. To open the drawer, the solenoid 1706 can apply a pullingforce to dislodge the second piece 1802 from bearing against the backsurface of the first piece 1804. Alternatively, the actuating mechanism1704 can apply a force to the second piece 1802 that dislodges thesecond piece 1802 from bearing against the back surface of the firstpiece 1804. In either situation, the first piece 1804 is then free torotate clockwise to release the pin 1822 and the slidable drawer 1404 isfree to open.

A first spring can apply a torque to the first piece 1804 that causesthe first piece 1804 to tend to rotate clockwise. A second spring canapply a torque to the second piece 1802 that causes the second piece1802 to tend to rotate counter-clockwise.

FIG. 19 is an exploded view of the top of the drawer enclosure 1402. Thedrawer enclosure 104 can include an opening 1902. In someimplementations, a plug can be releasably inserted in the opening. Theplug can include an indicia of the manufacturer (e.g., an objectdisplaying the company logo) or other artistic feature or serve as aplaceholder. A fastener 1904 can be slidably secured to the inside ofthe top of the drawer enclosure 1402. The fastener can 1904 lock anobject that is inserted through the opening 1902 to the drawer enclosure1402.

For example, to secure the stand 104 to the top of the drawer 108, afixture with an appropriate mating feature can be secured to the bottomof the stand 104, e.g., with a screw that is inserted into the opening1902. A user, e.g., a merchant can pull back (e.g., trigger) thefastener 1904, place the mating feature of the fixture into the opening1902, and aligning the mating feature with a slot or hole in thefastener 1904. The user then releases the fastener 1904 to hold thefixture in place. In some implementations, the fastener 1904 is a latch.To release a fastened object (e.g., whether it is the plug or thestand), a user can pull back the fastener 1904, then pull the fixtureupwardly out of the opening 1902.

Although the description above focuses on a stand that supports a tabletcomputer, for some applications, another type of mobile device, e.g., asmart phone, could be used in place of the tablet computer. A tabletcomputer has an advantage of a larger screen than a smart phone, whichcan make use of the point-of-sale system easier for the merchant.

In some implementations, a customer can conduct a cardless paymenttransaction with the merchant using the stand. The cardless paymenttransaction is described in U.S. patent application Ser. No. 61/563,022,filed on Nov. 22, 2011, entitled “Cardless Payment Transactions,” whichis incorporated by reference herein in its entirety. With cardlesspayment transactions, the card reader in the stand is optional.

Embodiments of the subject matter and the operations described in thisspecification can be implemented in digital electronic circuitry, or incomputer software, firmware, or hardware, including the structuresdisclosed in this specification and their structural equivalents, or incombinations of one or more of them. Embodiments of the subject matterdescribed in this specification can be implemented as one or morecomputer programs, i.e., one or more modules of computer programinstructions, encoded on a non-transitory computer storage medium forexecution by, or to control the operation of, data processing apparatus.Alternatively or in addition, the program instructions can be encoded onan artificially-generated propagated signal, e.g., a machine-generatedelectrical, optical, or electromagnetic signal, that is generated toencode information for transmission to suitable receiver apparatus forexecution by a data processing apparatus. A computer storage medium canbe, or be included in, a computer-readable storage device, acomputer-readable storage substrate, a random or serial access memoryarray or device, or a combination of one or more of them. Moreover,while a computer storage medium is not a propagated signal, a computerstorage medium can be a source or destination of computer programinstructions encoded in an artificially-generated propagated signal. Thecomputer storage medium can also be, or be included in, one or moreseparate physical components or media (e.g., multiple CDs, disks, orother storage devices).

The operations described in this specification can be implemented asoperations performed by a data processing apparatus on data stored onone or more computer-readable storage devices or received from othersources.

The term “data processing apparatus” encompasses all kinds of apparatus,devices, and machines for processing data, including by way of example aprogrammable processor, a computer, a system on a chip, or multipleones, or combinations, of the foregoing The apparatus can includespecial purpose logic circuitry, e.g., an FPGA (field programmable gatearray) or an ASIC (application-specific integrated circuit). Theapparatus can also include, in addition to hardware, code that createsan execution environment for the computer program in question, e.g.,code that constitutes processor firmware, a protocol stack, a databasemanagement system, an operating system, a cross-platform runtimeenvironment, a virtual machine, or a combination of one or more of them.The apparatus and execution environment can realize various differentcomputing model infrastructures, such as web services, distributedcomputing and grid computing infrastructures.

A computer program (also known as a program, software, softwareapplication, script, or code) can be written in any form of programminglanguage, including compiled or interpreted languages, declarative orprocedural languages, and it can be deployed in any form, including as astand-alone program or as a module, component, subroutine, object, orother unit suitable for use in a computing environment. A computerprogram may, but need not, correspond to a file in a file system. Aprogram can be stored in a portion of a file that holds other programsor data (e.g., one or more scripts stored in a markup languageresource), in a single file dedicated to the program in question, or inmultiple coordinated files (e.g., files that store one or more modules,sub-programs, or portions of code). A computer program can be deployedto be executed on one computer or on multiple computers that are locatedat one site or distributed across multiple sites and interconnected by acommunication network.

The processes and logic flows described in this specification can beperformed by one or more programmable processors executing one or morecomputer programs to perform actions by operating on input data andgenerating output. The processes and logic flows can also be performedby, and apparatus can also be implemented as, special purpose logiccircuitry, e.g., an FPGA (field programmable gate array) or an ASIC(application-specific integrated circuit).

Processors suitable for the execution of a computer program include, byway of example, both general and special purpose microprocessors, andany one or more processors of any kind of digital computer. Generally, aprocessor will receive instructions and data from a read-only memory ora random access memory or both. The essential elements of a computer area processor for performing actions in accordance with instructions andone or more memory devices for storing instructions and data. Generally,a computer will also include, or be operatively coupled to receive datafrom or transfer data to, or both, one or more mass storage devices forstoring data, e.g., magnetic, magneto-optical disks, or optical disks.However, a computer need not have such devices. Moreover, a computer canbe embedded in another device, e.g., a mobile telephone, a personaldigital assistant (PDA), a mobile audio or video player, a game console,a Global Positioning System (GPS) receiver, or a portable storage device(e.g., a universal serial bus (USB) flash drive), to name just a few.Devices suitable for storing computer program instructions and datainclude all forms of non-volatile memory, media and memory devices,including by way of example semiconductor memory devices, e.g., EPROM,EEPROM, and flash memory devices; magnetic disks, e.g., internal harddisks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROMdisks. The processor and the memory can be supplemented by, orincorporated in, special purpose logic circuitry.

To provide for interaction with a user, embodiments of the subjectmatter described in this specification can be implemented on a computerhaving a display device, e.g., a CRT (cathode ray tube) or LCD (liquidcrystal display) monitor, for displaying information to the user and akeyboard and a pointing device, e.g., a mouse or a trackball, by whichthe user can provide input to the computer. Other kinds of devices canbe used to provide for interaction with a user as well; for example,feedback provided to the user can be any form of sensory feedback, e.g.,visual feedback, auditory feedback, or tactile feedback; and input fromthe user can be received in any form, including acoustic, speech, ortactile input. In addition, a computer can interact with a user bysending resources to and receiving resources from a device that is usedby the user; for example, by sending web pages to a web browser on auser's client device in response to requests received from the webbrowser.

Embodiments of the subject matter described in this specification can beimplemented in a computing system that includes a back-end component,e.g., as a data server, or that includes a middleware component, e.g.,an application server, or that includes a front-end component, e.g., aclient computer having a graphical user interface or a Web browserthrough which a user can interact with an implementation of the subjectmatter described in this specification, or any combination of one ormore such back-end, middleware, or front-end components. The componentsof the system can be interconnected by any form or medium of digitaldata communication, e.g., a communication network. Examples ofcommunication networks include a local area network (“LAN”) and a widearea network (“WAN”), an inter-network (e.g., the Internet), andpeer-to-peer networks (e.g., ad hoc peer-to-peer networks).

The computing system can include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other. In someembodiments, a server transmits data (e.g., an HTML page) to a clientdevice (e.g., for purposes of displaying data to and receiving userinput from a user interacting with the client device). Data generated atthe client device (e.g., a result of the user interaction) can bereceived from the client device at the server.

A system of one or more computers can be configured to performparticular operations or actions by virtue of having software, firmware,hardware, or a combination of them installed on the system that inoperation causes or cause the system to perform the actions. One or morecomputer programs can be configured to perform particular operations oractions by virtue of including instructions that, when executed by dataprocessing apparatus, cause the apparatus to perform the actions.

While this specification contains many specific implementation details,these should not be construed as limitations on the scope of anyinventions or of what may be claimed, but rather as descriptions offeatures specific to particular embodiments of particular inventions.Certain features that are described in this specification in the contextof separate embodiments can also be implemented in combination in asingle embodiment. Conversely, various features that are described inthe context of a single embodiment can also be implemented in multipleembodiments separately or in any suitable subcombination. Moreover,although features may be described above as acting in certaincombinations and even initially claimed as such, one or more featuresfrom a claimed combination can in some cases be excised from thecombination, and the claimed combination may be directed to asubcombination or variation of a subcombination.

Similarly, while operations are depicted in the drawings in a particularorder, this should not be understood as requiring that such operationsbe performed in the particular order shown or in sequential order, orthat all illustrated operations be performed, to achieve desirableresults. In certain circumstances, multitasking and parallel processingmay be advantageous. Moreover, the separation of various systemcomponents in the embodiments described above should not be understoodas requiring such separation in all embodiments, and it should beunderstood that the described program components and systems cangenerally be integrated together in a single software product orpackaged into multiple software products.

Thus, particular embodiments of the subject matter have been described.Other embodiments are within the scope of the following claims. In somecases, the actions recited in the claims can be performed in a differentorder and still achieve desirable results. In addition, the processesdepicted in the accompanying figures do not necessarily require theparticular order shown, or sequential order, to achieve desirableresults. In certain implementations, multitasking and parallelprocessing may be advantageous.

What is claimed is:
 1. A cash drawer for a point of sale system,comprising: a slidable drawer including a front face, a back face, afirst side face, a second side face, and a bottom face, an inner shellattached to the first side face, the second side face, the front face,the back face, and the bottom face, and two sliding rails, the twosliding rails positioned under the inner shell and extending parallel tothe first and second side faces; a drawer enclosure having two railsupports to slidably support the two sliding rails such that the draweris slidable between a closed position and an open position; a latchmovable between a first position in which the latch holds the slidabledrawer in the closed position and a second position in which the latchreleases the slidable drawer to the open position; and an actuatorconfigured to move the latch from the first position to the secondposition.
 2. The cash drawer of claim 1, wherein the actuator comprisesa solenoid.
 3. The cash drawer of claim 1, further comprising a catchthat couples the drawer to the drawer enclosure.
 4. The cash drawer ofclaim 1, wherein the inner shell is formed to support a tray within thedrawer.
 5. The cash drawer of claim 1, wherein the drawer enclosurecomprises an opening and a fastener, wherein the opening is configuredto receive a mating feature of a stand and wherein a trigger of thefastener locks the stand enclosure in place.
 6. The cash drawer of claim5, wherein the opening is formed to include a plug, and where thetriggering of the fastener releases the plug.
 7. The cash drawer ofclaim 5, wherein the opening includes a data port configured to mate toa data port of the stand.
 8. The cash drawer of claim 1, wherein one ofthe two sliding rails is attached to the first side face and another ofthe two sliding rails is coupled to the second side face.
 9. The cashdrawer of claim 1, wherein the latch comprises a first piece, a secondpiece, a first spring configured to urge the first piece to rotate in afirst direction, and a second spring configure to urge the second pieceto rotate in a second direction opposite the first direction.
 10. Thecash drawer of claim 9, wherein in the closed position a pin attached tothe slidable drawer fits into a slot in the first piece and the secondpiece is position to prevent the first piece from rotation such that anedge of the slot prevents forward motion of the pin.
 11. The cash drawerof claim 1, wherein in the closed position a back surface of the frontface of the slidable drawer bears directly against a front surface ofthe drawer enclosure.